package com.sloth.service;

import com.sloth.pojo.OrderDetails;
import com.sloth.pojo.Product;
import com.sloth.pojo.SeckillList;
import com.sloth.pojo.SeckillVO;
import com.sloth.util.ServerResponse;

import java.util.List;

public interface SeckillService {


    // 按时段获取秒杀商品列表
    public ServerResponse getSeckillProduct(String time);

    // 秒杀
    public ServerResponse seckill(int secId,int custId,int addressId);

    // 根据id获取秒杀
    public SeckillList getSeckill(int secId);

    List<SeckillList> getAllSeckill();


    // 获取秒杀结果
    int getResult(Integer custId, int secId);

    // 通过秒杀商品id查询秒杀商品信息
    public Product getProductBySeckillProductId(Integer seckillProductId);

    // 通过 秒杀商品id 查询到 秒杀商品价格
    public Double getSeckillProductPriceBySeckillProductId(Integer seckillProductId);

    // 通过订单id查询订单中商品
    public Product getProductNameBySeckillOrderId(Integer seckillOrderId);

    // 通过 订单id 在订单详情表中查询出属于这个 订单id 的订单详情信息，因为一个订单对应一个商品对应一个订单详情
    public OrderDetails getOrderDetailsByOrderId(Integer orderId);

    // SeckillVO 获得订单编号、商品总价格、订单中商品名称
    public SeckillVO getSeckillVOBySeckillOrderId(Integer seckillOrderId);

}
